<header class="site-layout__header site-header" itemscope="itemscope" itemtype="https://schema.org/WPHeader">
    <nav class="site-header__navigation" itemscope="itemscope" itemtype="https://schema.org/SiteNavigationElement">
        <div class="site-header__navigation-header">
            <a target="_top" class="logo" href="https://docs.gradle.org" title="Gradle Docs">
                <svg width="139px" height="43px" viewBox="0 0 278 86" version="1.1" xmlns="http://www.w3.org/2000/svg">
                    <defs>
                        <style>.cls-1 {
                            fill: #02303a;
                        }</style>
                    </defs>
                    <title>Gradle</title>
                    <path class="cls-1"
                          d="M155,56.32V70.27a18.32,18.32,0,0,1-5.59,2.83,21.82,21.82,0,0,1-6.36.89,21.08,21.08,0,0,1-7.64-1.31A17.12,17.12,0,0,1,129.59,69a16.14,16.14,0,0,1-3.73-5.58,18.78,18.78,0,0,1-1.31-7.08,19.58,19.58,0,0,1,1.26-7.14A15.68,15.68,0,0,1,135,40a20.39,20.39,0,0,1,7.45-1.29,22,22,0,0,1,3.92.33,20.43,20.43,0,0,1,3.39.92,15.16,15.16,0,0,1,2.85,1.42A17.3,17.3,0,0,1,155,43.25l-1.84,2.91a1.72,1.72,0,0,1-1.12.84,2,2,0,0,1-1.5-.34L149,45.75a10.49,10.49,0,0,0-1.75-.79,14.33,14.33,0,0,0-2.17-.54,15.29,15.29,0,0,0-2.78-.22,11.91,11.91,0,0,0-4.61.86,9.66,9.66,0,0,0-3.52,2.46,10.9,10.9,0,0,0-2.24,3.84,14.88,14.88,0,0,0-.79,5,15.23,15.23,0,0,0,.85,5.28,11.06,11.06,0,0,0,2.38,3.94A10.15,10.15,0,0,0,138.05,68a14.28,14.28,0,0,0,8.25.44,17.1,17.1,0,0,0,2.94-1.09V61.14h-4.35a1.3,1.3,0,0,1-1-.35,1.15,1.15,0,0,1-.35-.85V56.32Zm10.47-2.93a10.53,10.53,0,0,1,2.72-3.45,5.77,5.77,0,0,1,3.72-1.25,4.5,4.5,0,0,1,2.72.74l-.38,4.41a1.18,1.18,0,0,1-.34.61,1,1,0,0,1-.61.18,6.76,6.76,0,0,1-1.06-.12,8.22,8.22,0,0,0-1.38-.12,5,5,0,0,0-1.74.28,4.37,4.37,0,0,0-1.37.83,5.55,5.55,0,0,0-1.07,1.3,12.26,12.26,0,0,0-.87,1.74V73.61H160V49.14h3.45a1.94,1.94,0,0,1,1.27.32,1.9,1.9,0,0,1,.48,1.16Zm11.36-.84A14.49,14.49,0,0,1,187,48.69a9.92,9.92,0,0,1,3.84.7,8.06,8.06,0,0,1,2.86,2,8.38,8.38,0,0,1,1.78,3,11.64,11.64,0,0,1,.61,3.82V73.61h-2.68a2.64,2.64,0,0,1-1.28-.25,1.72,1.72,0,0,1-.72-1l-.52-1.77a20.25,20.25,0,0,1-1.82,1.47,10.86,10.86,0,0,1-1.83,1.06,10.36,10.36,0,0,1-2,.66,12,12,0,0,1-2.4.22,9.64,9.64,0,0,1-2.86-.41,6.28,6.28,0,0,1-2.27-1.26,5.6,5.6,0,0,1-1.48-2.07,7.38,7.38,0,0,1-.52-2.89,5.7,5.7,0,0,1,.31-1.85,5.3,5.3,0,0,1,1-1.75,8.25,8.25,0,0,1,1.83-1.57,11.17,11.17,0,0,1,2.75-1.29,23.28,23.28,0,0,1,3.81-.9,36.77,36.77,0,0,1,5-.41V58.16a5.35,5.35,0,0,0-1.05-3.64,3.83,3.83,0,0,0-3-1.18,7.3,7.3,0,0,0-2.38.33,9.39,9.39,0,0,0-1.65.75l-1.3.75a2.52,2.52,0,0,1-1.3.34,1.7,1.7,0,0,1-1.05-.32,2.61,2.61,0,0,1-.69-.76Zm13.5,10.61a31.66,31.66,0,0,0-4.3.45,11,11,0,0,0-2.79.82,3.57,3.57,0,0,0-1.5,1.17,2.89,2.89,0,0,0,.47,3.67,3.93,3.93,0,0,0,2.39.67,7,7,0,0,0,3.14-.66,9.52,9.52,0,0,0,2.59-2Zm32.53-25V73.61h-3.6a1.39,1.39,0,0,1-1.48-1.07l-.5-2.36a12.4,12.4,0,0,1-3.4,2.74,9.17,9.17,0,0,1-4.47,1,7.95,7.95,0,0,1-6.55-3.26A11.61,11.61,0,0,1,201,66.79a19.71,19.71,0,0,1-.66-5.34,16.77,16.77,0,0,1,.74-5.06,12.21,12.21,0,0,1,2.13-4,9.88,9.88,0,0,1,3.31-2.69,9.64,9.64,0,0,1,4.34-1,8.63,8.63,0,0,1,3.51.64,9,9,0,0,1,2.6,1.74V38.17ZM217,55.39a5.94,5.94,0,0,0-2.18-1.72,6.54,6.54,0,0,0-2.54-.5,5.68,5.68,0,0,0-2.41.5A4.87,4.87,0,0,0,208,55.19a7.19,7.19,0,0,0-1.17,2.57,14.83,14.83,0,0,0-.4,3.69,16.34,16.34,0,0,0,.34,3.63,7.14,7.14,0,0,0,1,2.44,3.79,3.79,0,0,0,1.58,1.36,5,5,0,0,0,2.07.41,6,6,0,0,0,3.13-.76A9.19,9.19,0,0,0,217,66.36Zm17.67-17.22V73.61h-5.89V38.17ZM245.1,62.11a11.37,11.37,0,0,0,.67,3.26,6.54,6.54,0,0,0,1.38,2.27,5.39,5.39,0,0,0,2,1.33,7.26,7.26,0,0,0,2.61.44,8.21,8.21,0,0,0,2.47-.33,11.51,11.51,0,0,0,1.81-.74c.52-.27,1-.52,1.36-.74a2.31,2.31,0,0,1,1.13-.33,1.21,1.21,0,0,1,1.1.55L261.36,70a9.45,9.45,0,0,1-2.19,1.92,12.18,12.18,0,0,1-2.54,1.24,14,14,0,0,1-2.7.66,18.78,18.78,0,0,1-2.65.19,12.93,12.93,0,0,1-4.75-.85,10.65,10.65,0,0,1-3.82-2.5,11.8,11.8,0,0,1-2.55-4.1,15.9,15.9,0,0,1-.93-5.67,13.55,13.55,0,0,1,.81-4.71,11.34,11.34,0,0,1,2.33-3.84,11,11,0,0,1,3.69-2.59,12.31,12.31,0,0,1,4.93-1,11.86,11.86,0,0,1,4.27.74,9.25,9.25,0,0,1,3.36,2.16,9.84,9.84,0,0,1,2.21,3.48,13,13,0,0,1,.8,4.71,3.82,3.82,0,0,1-.29,1.8,1.19,1.19,0,0,1-1.1.46Zm11.23-3.55A7.28,7.28,0,0,0,256,56.4a5.16,5.16,0,0,0-1-1.77,4.44,4.44,0,0,0-1.63-1.21,5.68,5.68,0,0,0-2.3-.44,5.46,5.46,0,0,0-4,1.45,7.13,7.13,0,0,0-1.87,4.13ZM112.26,14a13.72,13.72,0,0,0-19.08-.32,1.27,1.27,0,0,0-.41.93,1.31,1.31,0,0,0,.38.95l1.73,1.73a1.31,1.31,0,0,0,1.71.12,7.78,7.78,0,0,1,4.71-1.57,7.87,7.87,0,0,1,5.57,13.43C96,40.2,81.41,9.66,48.4,25.37a4.48,4.48,0,0,0-2,6.29l5.66,9.79a4.49,4.49,0,0,0,6.07,1.67l.14-.08-.11.08,2.51-1.41a57.72,57.72,0,0,0,7.91-5.89,1.37,1.37,0,0,1,1.8-.06h0a1.29,1.29,0,0,1,0,2A59.79,59.79,0,0,1,62.11,44l-.09.05-2.51,1.4a7,7,0,0,1-3.47.91,7.19,7.19,0,0,1-6.23-3.57l-5.36-9.24C34.17,40.81,27.93,54.8,31.28,72.5a1.31,1.31,0,0,0,1.29,1.06h6.09A1.3,1.3,0,0,0,40,72.42a8.94,8.94,0,0,1,17.73,0A1.3,1.3,0,0,0,59,73.56h5.94a1.31,1.31,0,0,0,1.3-1.14,8.93,8.93,0,0,1,17.72,0,1.3,1.3,0,0,0,1.29,1.14h5.87a1.3,1.3,0,0,0,1.3-1.28c.14-8.28,2.37-17.79,8.74-22.55C123.15,33.25,117.36,19.12,112.26,14ZM89.79,38.92l-4.2-2.11h0a2.64,2.64,0,1,1,4.2,2.12Z"/>
                </svg>
            </a>
            <div class="site-header__doc-type sr-only">User Manual</div>
            <div class="site-header-version"></div>
            <button type="button" aria-label="Navigation Menu" class="site-header__navigation-button hamburger">
                <span class="hamburger__bar"></span>
                <span class="hamburger__bar"></span>
                <span class="hamburger__bar"></span>
            </button>
        </div>
        <div class="site-header__navigation-collapsible site-header__navigation-collapsible--collapse">
            <ul class="site-header__navigation-items">
                <li class="site-header__navigation-item site-header__navigation-submenu-section" tabindex="0">
                    <span class="site-header__navigation-link">
                        Community
                        <svg class="site-header__down-arrow site-header__icon-light" width="19" height="11" viewBox="0 0 19 11" xmlns="http://www.w3.org/2000/svg"><title>Open Community Menu</title><path transform="rotate(-180 9.374 5.494)" d="M17.9991 10.422825L9.3741 0.565575 0.7491 10.422825" stroke="#02303A" stroke-width="1.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>
                    </span>
                    <div class="site-header__navigation-submenu">
                        <div class="site-header__navigation-submenu-item" itemprop="name">
                            <a target="_top" class="site-header__navigation-submenu-item-link" href="https://gradle.org/" itemprop="url">
                                <span class="site-header__navigation-submenu-item-link-text">Community Home</span>
                            </a>
                        </div>
                        <div class="site-header__navigation-submenu-item" itemprop="name">
                            <a target="_top" class="site-header__navigation-submenu-item-link" href="https://discuss.gradle.org/" itemprop="url">
                                <span class="site-header__navigation-submenu-item-link-text">Community Forums</span>
                            </a>
                        </div>
                        <div class="site-header__navigation-submenu-item" itemprop="name">
                            <a target="_top" class="site-header__navigation-submenu-item-link" href="https://plugins.gradle.org" itemprop="url">
                                <span class="site-header__navigation-submenu-item-link-text">Community Plugins</span>
                            </a>
                        </div>
                    </div>
                </li>
                <li class="site-header__navigation-item" itemprop="name">
                    <a target="_top" class="site-header__navigation-link" href="https://gradle.com/training/" itemprop="url">Training</a>
                </li>
                <li class="site-header__navigation-item site-header__navigation-submenu-section" tabindex="0">
                    <span class="site-header__navigation-link">
                        News
                        <svg class="site-header__down-arrow site-header__icon-light" width="19" height="11" viewBox="0 0 19 11" xmlns="http://www.w3.org/2000/svg"><title>Open Community Menu</title><path transform="rotate(-180 9.374 5.494)" d="M17.9991 10.422825L9.3741 0.565575 0.7491 10.422825" stroke="#02303A" stroke-width="1.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>
                    </span>
                    <div class="site-header__navigation-submenu">
                        <div class="site-header__navigation-submenu-item" itemprop="name">
                            <a class="site-header__navigation-submenu-item-link" href="https://newsletter.gradle.com" itemprop="url">
                                <span class="site-header__navigation-submenu-item-link-text">Newsletter</span>
                            </a>
                        </div>
                        <div class="site-header__navigation-submenu-item" itemprop="name">
                            <a class="site-header__navigation-submenu-item-link" href="https://blog.gradle.org" itemprop="url">
                                <span class="site-header__navigation-submenu-item-link-text">Blog</span>
                            </a>
                        </div>
                        <div class="site-header__navigation-submenu-item">
                            <a class="site-header__navigation-submenu-item-link" href="https://twitter.com/gradle">
                                <span class="site-header__navigation-submenu-item-link-text">Twitter</span>
                            </a>
                        </div>
                    </div>
                </li>
                <li class="site-header__navigation-item" itemprop="name">
                    <a target="_top" class="site-header__navigation-link" href="https://gradle.com" itemprop="url">Enterprise</a>
                </li>
                <li class="site-header__navigation-item">
                    <a class="site-header__navigation-link" title="Gradle on GitHub" href="https://github.com/gradle/gradle"><svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><title>github</title><path d="M10 0C4.477 0 0 4.477 0 10c0 4.418 2.865 8.166 6.839 9.489.5.092.682-.217.682-.482 0-.237-.008-.866-.013-1.7-2.782.603-3.369-1.342-3.369-1.342-.454-1.155-1.11-1.462-1.11-1.462-.908-.62.069-.608.069-.608 1.003.07 1.531 1.03 1.531 1.03.892 1.529 2.341 1.087 2.91.831.092-.646.35-1.086.636-1.336-2.22-.253-4.555-1.11-4.555-4.943 0-1.091.39-1.984 1.029-2.683-.103-.253-.446-1.27.098-2.647 0 0 .84-.268 2.75 1.026A9.578 9.578 0 0 1 10 4.836c.85.004 1.705.114 2.504.337 1.909-1.294 2.747-1.026 2.747-1.026.546 1.377.203 2.394.1 2.647.64.699 1.028 1.592 1.028 2.683 0 3.842-2.339 4.687-4.566 4.935.359.309.678.919.678 1.852 0 1.336-.012 2.415-.012 2.743 0 .267.18.579.688.481C17.137 18.163 20 14.418 20 10c0-5.523-4.478-10-10-10" fill="#02303A" fill-rule="evenodd"/></svg></a>
                </li>
            </ul>
        </div>
    </nav>
</header>

<main class="main-content">
    <!-- Primary Navigation -->
    <nav class="docs-navigation">
        <div class="search-container">
            <input type="search" name="q" id="search-input" class="search-input" placeholder="Search the docs"/>
        </div>
        <ul>
            <li><a href="../userguide/userguide.html">Docs Home</a></li>
            <li><a href="https://guides.gradle.org">Tutorials</a></li>
            <li><a href="../release-notes.html">Release Notes</a></li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#gradle-api" aria-expanded="false" aria-controls="gradle-api">Gradle API</a>
                <ul id="gradle-api">
                    <li><a href="../javadoc/index.html?overview-summary.html">Javadoc</a></li>
                    <li><a href="../dsl/index.html">Groovy DSL Reference</a></li>
                    <li><a href="../userguide/groovy_build_script_primer.html">Groovy DSL Primer</a></li>
                    <li><a href="https://gradle.github.io/kotlin-dsl-docs/api/" target="_blank">Kotlin DSL API</a></li>
                    <li><a href="../userguide/kotlin_dsl.html">Kotlin DSL Primer</a></li>
                </ul>
            </li>
        </ul>

        <h3 id="user-manual">User Manual </h3>
        <div class="docs-home-link">
            <div class="pdf-link-container">
                <a href="../userguide/userguide.pdf">
                    <svg width="10px" height="12px" viewBox="0 0 10 12" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M6.01302083,0.857142857 C6.2421875,0.857142857 6.4296875,1.05 6.4296875,1.28571429 L6.4296875,5.14285714 L8.875,5.14285714 C9.05989583,5.14285714 9.15364583,5.37321429 9.0234375,5.50714286 L5.29427083,9.35357143 C5.13020833,9.52232143 4.8671875,9.52232143 4.703125,9.35357143 L0.979166667,5.50714286 C0.848958333,5.37321429 0.940104167,5.14285714 1.12760417,5.14285714 L3.57291667,5.14285714 L3.57291667,1.28571429 C3.57291667,1.05 3.76041667,0.857142857 3.98958333,0.857142857 L6.01302083,0.857142857 Z M6.01302083,0 L3.98958333,0 C3.29947917,0 2.73958333,0.575892857 2.73958333,1.28571429 L2.73958333,4.28571429 L1.12760417,4.28571429 C0.203125,4.28571429 -0.265625,5.4375 0.390625,6.1125 L4.11458333,9.95892857 C4.60416667,10.4625 5.39583333,10.4625 5.88541667,9.95892857 L9.61197917,6.11517857 C10.265625,5.44285714 9.80208333,4.28839286 8.875,4.28839286 L7.26302083,4.28839286 L7.26302083,1.28571429 C7.26302083,0.575892857 6.70052083,0 6.01302083,0 Z M10,11.6785714 L10,11.4642857 C10,11.2875 9.859375,11.1428571 9.6875,11.1428571 L0.3125,11.1428571 C0.140625,11.1428571 0,11.2875 0,11.4642857 L0,11.6785714 C0,11.8553571 0.140625,12 0.3125,12 L9.6875,12 C9.859375,12 10,11.8553571 10,11.6785714 Z"></path></svg>
                    PDF
                </a>
            </div>
        </div>
        <ul>
            <li><a href="../userguide/getting_started.html">Getting Started</a></li>
            <li><a href="../userguide/installation.html">Installing Gradle</a></li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#upgrading-gradle" aria-expanded="false" aria-controls="upgrading-gradle">Upgrading Gradle...</a>
                <ul id="upgrading-gradle">
                    <li><a href="../userguide/upgrading_version_6.html">version 6.X to latest</a></li>
                    <li><a href="../userguide/upgrading_version_5.html">version 5.X to 6.0</a></li>
                    <li><a href="../userguide/upgrading_version_4.html">version 4.X to 5.0</a></li>
                    <li><a href="../userguide/feature_lifecycle.html">Gradle's Feature Lifecycle</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#migrating-to-gradle" aria-expanded="false" aria-controls="migrating-to-gradle">Migrating to Gradle...</a>
                <ul id="migrating-to-gradle">
                    <li><a href="../userguide/migrating_from_maven.html">from Maven</a></li>
                    <li><a href="../userguide/migrating_from_ant.html">from Ant</a></li>
                </ul>
            </li>
            <li><a href="../userguide/compatibility.html">Compatibility Notes</a></li>
            <li><a href="../userguide/troubleshooting.html">Troubleshooting Builds</a></li>
        </ul>

        <h3 id="running-gradle-builds">Running Gradle Builds</h3>
        <ul>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#customizing-execution" aria-expanded="false" aria-controls="customizing-execution">Customizing Execution</a>
                <ul id="customizing-execution">
                    <li><a href="../userguide/build_environment.html">Configuring the Build Environment</a></li>
                    <li><a href="../userguide/gradle_daemon.html">Configuring the Gradle Daemon</a></li>
                    <li><a href="../userguide/init_scripts.html">Using Initialization Scripts</a></li>
                </ul>
            </li>
            <li><a href="../userguide/intro_multi_project_builds.html">Executing Multi-Project Builds</a></li>
            <li><a href="https://guides.gradle.org/creating-build-scans/">Inspecting Gradle Builds</a></li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#optimizing-build-performance" aria-expanded="false" aria-controls="optimizing-build-performance">Optimizing Build Times</a>
                <ul id="optimizing-build-performance">
                    <li><a href="https://guides.gradle.org/performance/">Build Performance Guide</a></li>
                    <li><a href="../userguide/build_cache.html">Enabling and Configuring the Build Cache</a></li>
                </ul>
            </li>
        </ul>

        <h3 id="authoring-gradle-builds">Authoring Gradle Builds</h3>
        <ul>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#learning-the-basics" aria-expanded="false" aria-controls="learning-the-basics">Learning the Basics</a>
                <ul id="learning-the-basics">
                    <li><a href="../userguide/tutorial_using_tasks.html">Introducing the Basics of Build Scripts</a></li>
                    <li><a href="../userguide/more_about_tasks.html">Working with Tasks</a></li>
                    <li><a href="../userguide/writing_build_scripts.html">Learning More About Build Scripts</a></li>
                    <li><a href="../userguide/working_with_files.html">Working with Files</a></li>
                    <li><a href="../userguide/plugins.html">Using Gradle Plugins</a></li>
                    <li><a href="../userguide/build_lifecycle.html">Understanding the Build Lifecycle</a></li>
                    <li><a href="../userguide/logging.html">Working with Logging</a></li>
                    <li><a href="../userguide/multi_project_builds.html">Configuring Multi-Project Builds</a></li>
                    <li><a href="../userguide/potential_traps.html">Avoiding Traps</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#authoring-sustainable-builds" aria-expanded="false" aria-controls="authoring-sustainable-builds">Authoring Sustainable Builds</a>
                <ul id="authoring-sustainable-builds">
                    <li><a href="../userguide/organizing_gradle_projects.html">Organizing Build Logic</a></li>
                    <li><a href="../userguide/authoring_maintainable_build_scripts.html">Following Best Practices</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#advanced-techniques" aria-expanded="false" aria-controls="advanced-techniques">Advanced Techniques</a>
            <ul id="advanced-techniques">
                <li><a href="https://guides.gradle.org/using-the-worker-api/">Developing Parallel Tasks</a></li>
                <li><a href="../userguide/test_kit.html">Testing a Build with TestKit</a></li>
                <li><a href="../userguide/ant.html">Using Ant from Gradle</a></li>
            </ul>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#sample-gradle-builds" aria-expanded="false" aria-controls="sample-gradle-builds">Example Gradle Projects</a>
                <ul id="sample-gradle-builds">
                    <li><a href="https://github.com/gradle/gradle/tree/master/subprojects/docs/src/samples">Groovy DSL Samples</a></li>
                    <li><a href="https://github.com/gradle/kotlin-dsl/tree/master/samples">Kotlin DSL Samples</a></li>
                    <li><a href="../samples/index.html">Gradle Samples</a></li>
                </ul>
            </li>
        </ul>

        <h3 id="authoring-gradle-builds-java">Authoring JVM Builds</h3>
        <ul>
            <li><a href="../userguide/building_java_projects.html">Building Java &amp; JVM projects</a></li>
            <li><a href="../userguide/java_testing.html">Testing Java &amp; JVM projects</a></li>
            <li><a href="../userguide/dependency_management_for_java_projects.html">Managing Dependencies</a></li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#jvm-plugins" aria-expanded="false" aria-controls="jvm-plugins">JVM Plugins</a>
                <ul id="jvm-plugins">
                    <li><a href="../userguide/java_library_plugin.html">Java Library Plugin</a></li>
                    <li><a href="../userguide/application_plugin.html">Java Application Plugin</a></li>
                    <li><a href="../userguide/java_platform_plugin.html">Java Platform Plugin</a></li>
                    <li><a href="../userguide/groovy_plugin.html">Groovy Plugin</a></li>
                    <li><a href="../userguide/scala_plugin.html">Scala Plugin</a></li>
                </ul>
            </li>
        </ul>

        <h3 id="authoring-gradle-builds-native">Authoring C++/Swift Builds</h3>
        <ul>
            <li><a href="../userguide/building_cpp_projects.html">Building C++ projects</a></li>
            <li><a href="../userguide/cpp_testing.html">Testing C++ projects</a></li>
            <li><a href="../userguide/building_swift_projects.html">Building Swift projects</a></li>
            <li><a href="../userguide/swift_testing.html">Testing Swift projects</a></li>
        </ul>

        <h3 id="managing-dependencies">Working with Dependencies</h3>
        <ul>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#learning-the-basics-dependency-management" aria-expanded="false" aria-controls="learning-the-basics-dependency-management">Learning the Basics</a>
                <ul id="learning-the-basics-dependency-management">
                    <li><a href="../userguide/core_dependency_management.html">What is Dependency Management?</a></li>
                    <li><a href="../userguide/declaring_repositories.html">Declaring Repositories</a></li>
                    <li><a href="../userguide/declaring_dependencies.html">Declaring Dependencies</a></li>
                    <li><a href="../userguide/library_vs_application.html">Understanding Library and Application Differences</a></li>
                    <li><a href="../userguide/viewing_debugging_dependencies.html">Viewing and Debugging Dependencies</a></li>
                    <li><a href="../userguide/dependency_resolution.html">Understanding Resolution</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#declaring-dependency-versions" aria-expanded="false" aria-controls="declaring-dependency-versions">Declaring Versions</a>
                <ul id="declaring-dependency-versions">
                    <li><a href="../userguide/single_versions.html">Declaring Versions and Ranges</a></li>
                    <li><a href="../userguide/rich_versions.html">Declaring Rich Versions</a></li>
                    <li><a href="../userguide/dynamic_versions.html">Handling Changing Versions</a></li>
                    <li><a href="../userguide/dependency_locking.html">Locking Versions</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#controlling-transitive-dependencies" aria-expanded="false" aria-controls="controlling-transitive-dependencies">Controlling Transitives</a>
                <ul id="controlling-transitive-dependencies">
                    <li><a href="../userguide/dependency_constraints.html">Upgrading Versions</a></li>
                    <li><a href="../userguide/dependency_downgrade_and_exclude.html">Downgrading and Excluding</a></li>
                    <li><a href="../userguide/platforms.html">Sharing Versions</a></li>
                    <li><a href="../userguide/dependency_version_alignment.html">Aligning Dependencies</a></li>
                    <li><a href="../userguide/dependency_capability_conflict.html">Handling Mutually Exclusive Dependencies</a></li>
                    <li><a href="../userguide/component_metadata_rules.html">Fixing Metadata</a></li>
                    <li><a href="../userguide/resolution_rules.html">Customizing Resolution</a></li>
                    <li><a href="../userguide/resolution_stategy_tuning.html">Preventing accidental upgrades</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#modeling-features" aria-expanded="false" aria-controls="modeling-features">Producing and Consuming Variants of Libraries</a>
                <ul id="modeling-features">
                    <li><a href="../userguide/component_capabilities.html">Declaring Capabilities of a Library</a></li>
                    <li><a href="../userguide/feature_variants.html">Modeling Feature Variants and Optional Dependencies</a></li>
                    <li><a href="../userguide/variant_model.html">Understanding Variant Selection</a></li>
                    <li><a href="../userguide/variant_attributes.html">Declaring Variant Attributes</a></li>
                    <li><a href="../userguide/cross_project_publications.html">Sharing Outputs of Projects</a></li>
                    <li><a href="../userguide/artifact_transforms.html">Transforming Artifacts</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#multi-repo" aria-expanded="false" aria-controls="multi-repo">Working in a Multi-repo Environment</a>
                <ul id="multi-repo">
                    <li><a href="../userguide/composite_builds.html">Composing Builds</a></li>
                </ul>
            </li>
            <li><a class="nav-dropdown" data-toggle="collapse" href="#publishing" aria-expanded="false" aria-controls="publishing">Publishing Libraries</a>
                <ul id="publishing">
                    <li><a href="../userguide/publishing_setup.html">Setting up Publishing</a></li>
                    <li><a href="../userguide/publishing_gradle_module_metadata.html">Understanding Gradle Module Metadata</a></li>
                    <li><a href="../userguide/publishing_signing.html">Signing Artifacts</a></li>
                    <li><a href="../userguide/publishing_customization.html">Customizing Publishing</a></li>
                </ul>
            </li>
            <li><a href="../userguide/dependency_management_terminology.html">Terminology</a></li>
        </ul>

        <h3 id="extending-gradle">Extending Gradle</h3>
        <ul>
            <li><a href="https://gradle.org/guides/?q=Plugin%20Development">Plugin Development Tutorials</a></li>
            <li><a href="../userguide/custom_tasks.html">Writing Gradle Task Types</a></li>
            <li><a href="../userguide/custom_plugins.html">Writing Gradle Plugins</a></li>
            <li><a href="../userguide/custom_gradle_types.html">Writing Custom Gradle Types</a></li>
            <li><a href="../userguide/lazy_configuration.html">Configuring Tasks Lazily</a></li>
            <li><a href="../userguide/task_configuration_avoidance.html">Using Task Configuration Avoidance</a></li>
        </ul>

        <h3 id="reference">Reference</h3>
        <ul>
            <li><a href="../userguide/plugin_reference.html">Core Plugins</a></li>
            <li><a href="../userguide/command_line_interface.html">Command-Line Interface</a></li>
            <li id="third-party-integration"><a href="../userguide/third_party_integration.html">Gradle &amp; Third-party Tools</a></li>
            <li><a href="../userguide/gradle_wrapper.html">The Gradle Wrapper</a></li>
            <li><a href="../userguide/directory_layout.html">Gradle-managed Directories</a></li>
        </ul>
    </nav>
    <!-- End Primary Navigation -->
    <div class="chapter">
        <aside class="chapter-meta js-chapter-meta">
            <div class="rating js-rating-widget">
                <!--NOTE: These are "backwards" because we use a right-to-left trick for hover state-->
                <i class="star js-analytics-event js-rating" title="Excellent Documentation" data-action="rating" data-label="5"><svg width="16px" height="15px" viewBox="0 0 16 15" version="1.1" xmlns="http://www.w3.org/2000/svg"><g stroke="#999999" transform="translate(-33.000000, -11.000000)" stroke-width="1" fill="none" fill-rule="evenodd"><path d="M40.9955595,22.8514234 L36.7915654,24.9948806 L36.7915654,24.9948806 C36.7423632,25.019967 36.6821404,25.0004172 36.657054,24.951215 C36.6471785,24.931846 36.6438844,24.9097862 36.6476706,24.8883772 L37.4490484,20.357021 L37.4490484,20.357021 C37.4549065,20.3238963 37.4437179,20.2900458 37.419273,20.2669371 L34.0268385,17.0599455 L34.0268385,17.0599455 C33.9867045,17.0220055 33.984926,16.9587139 34.0228661,16.91858 C34.0384357,16.9021101 34.0591382,16.8914177 34.0815807,16.888255 L38.7752895,16.2268062 L38.7752895,16.2268062 C38.8076013,16.2222528 38.8356591,16.2022207 38.8504587,16.1731387 L40.9518588,12.0437603 L40.9518588,12.0437603 C40.9769072,11.9945387 41.0371149,11.9749424 41.0863365,11.9999908 C41.1051882,12.0095843 41.1205124,12.0249085 41.1301059,12.0437603 L43.2315061,16.1731387 L43.2315061,16.1731387 C43.2463056,16.2022207 43.2743635,16.2222528 43.3066753,16.2268062 L48.0003841,16.888255 L48.0003841,16.888255 C48.0550722,16.8959618 48.0931581,16.9465428 48.0854513,17.001231 C48.0822887,17.0236735 48.0715962,17.044376 48.0551263,17.0599455 L44.6626917,20.2669371 L44.6626917,20.2669371 C44.6382468,20.2900458 44.6270582,20.3238963 44.6329164,20.357021 L45.4342941,24.8883772 L45.4342941,24.8883772 C45.4439121,24.9427617 45.4076217,24.9946461 45.3532371,25.0042641 C45.3318281,25.0080503 45.3097683,25.0047561 45.2903993,24.9948806 L41.0864052,22.8514234 L41.0864052,22.8514234 C41.0578708,22.8368748 41.024094,22.8368748 40.9955595,22.8514234 Z"></path></g></svg></i>
                <i class="star js-analytics-event js-rating" title="Good Documentation" data-action="rating" data-label="4"><svg width="16px" height="15px" viewBox="0 0 16 15" version="1.1" xmlns="http://www.w3.org/2000/svg"><g stroke="#999999" transform="translate(-33.000000, -11.000000)" stroke-width="1" fill="none" fill-rule="evenodd"><path d="M40.9955595,22.8514234 L36.7915654,24.9948806 L36.7915654,24.9948806 C36.7423632,25.019967 36.6821404,25.0004172 36.657054,24.951215 C36.6471785,24.931846 36.6438844,24.9097862 36.6476706,24.8883772 L37.4490484,20.357021 L37.4490484,20.357021 C37.4549065,20.3238963 37.4437179,20.2900458 37.419273,20.2669371 L34.0268385,17.0599455 L34.0268385,17.0599455 C33.9867045,17.0220055 33.984926,16.9587139 34.0228661,16.91858 C34.0384357,16.9021101 34.0591382,16.8914177 34.0815807,16.888255 L38.7752895,16.2268062 L38.7752895,16.2268062 C38.8076013,16.2222528 38.8356591,16.2022207 38.8504587,16.1731387 L40.9518588,12.0437603 L40.9518588,12.0437603 C40.9769072,11.9945387 41.0371149,11.9749424 41.0863365,11.9999908 C41.1051882,12.0095843 41.1205124,12.0249085 41.1301059,12.0437603 L43.2315061,16.1731387 L43.2315061,16.1731387 C43.2463056,16.2022207 43.2743635,16.2222528 43.3066753,16.2268062 L48.0003841,16.888255 L48.0003841,16.888255 C48.0550722,16.8959618 48.0931581,16.9465428 48.0854513,17.001231 C48.0822887,17.0236735 48.0715962,17.044376 48.0551263,17.0599455 L44.6626917,20.2669371 L44.6626917,20.2669371 C44.6382468,20.2900458 44.6270582,20.3238963 44.6329164,20.357021 L45.4342941,24.8883772 L45.4342941,24.8883772 C45.4439121,24.9427617 45.4076217,24.9946461 45.3532371,25.0042641 C45.3318281,25.0080503 45.3097683,25.0047561 45.2903993,24.9948806 L41.0864052,22.8514234 L41.0864052,22.8514234 C41.0578708,22.8368748 41.024094,22.8368748 40.9955595,22.8514234 Z"></path></g></svg></i>
                <i class="star js-analytics-event js-rating" title="OK Documentation" data-action="rating" data-label="3"><svg width="16px" height="15px" viewBox="0 0 16 15" version="1.1" xmlns="http://www.w3.org/2000/svg"><g stroke="#999999" transform="translate(-33.000000, -11.000000)" stroke-width="1" fill="none" fill-rule="evenodd"><path d="M40.9955595,22.8514234 L36.7915654,24.9948806 L36.7915654,24.9948806 C36.7423632,25.019967 36.6821404,25.0004172 36.657054,24.951215 C36.6471785,24.931846 36.6438844,24.9097862 36.6476706,24.8883772 L37.4490484,20.357021 L37.4490484,20.357021 C37.4549065,20.3238963 37.4437179,20.2900458 37.419273,20.2669371 L34.0268385,17.0599455 L34.0268385,17.0599455 C33.9867045,17.0220055 33.984926,16.9587139 34.0228661,16.91858 C34.0384357,16.9021101 34.0591382,16.8914177 34.0815807,16.888255 L38.7752895,16.2268062 L38.7752895,16.2268062 C38.8076013,16.2222528 38.8356591,16.2022207 38.8504587,16.1731387 L40.9518588,12.0437603 L40.9518588,12.0437603 C40.9769072,11.9945387 41.0371149,11.9749424 41.0863365,11.9999908 C41.1051882,12.0095843 41.1205124,12.0249085 41.1301059,12.0437603 L43.2315061,16.1731387 L43.2315061,16.1731387 C43.2463056,16.2022207 43.2743635,16.2222528 43.3066753,16.2268062 L48.0003841,16.888255 L48.0003841,16.888255 C48.0550722,16.8959618 48.0931581,16.9465428 48.0854513,17.001231 C48.0822887,17.0236735 48.0715962,17.044376 48.0551263,17.0599455 L44.6626917,20.2669371 L44.6626917,20.2669371 C44.6382468,20.2900458 44.6270582,20.3238963 44.6329164,20.357021 L45.4342941,24.8883772 L45.4342941,24.8883772 C45.4439121,24.9427617 45.4076217,24.9946461 45.3532371,25.0042641 C45.3318281,25.0080503 45.3097683,25.0047561 45.2903993,24.9948806 L41.0864052,22.8514234 L41.0864052,22.8514234 C41.0578708,22.8368748 41.024094,22.8368748 40.9955595,22.8514234 Z"></path></g></svg></i>
                <i class="star js-analytics-event js-rating" title="Poor Documentation" data-action="rating" data-label="2"><svg width="16px" height="15px" viewBox="0 0 16 15" version="1.1" xmlns="http://www.w3.org/2000/svg"><g stroke="#999999" transform="translate(-33.000000, -11.000000)" stroke-width="1" fill="none" fill-rule="evenodd"><path d="M40.9955595,22.8514234 L36.7915654,24.9948806 L36.7915654,24.9948806 C36.7423632,25.019967 36.6821404,25.0004172 36.657054,24.951215 C36.6471785,24.931846 36.6438844,24.9097862 36.6476706,24.8883772 L37.4490484,20.357021 L37.4490484,20.357021 C37.4549065,20.3238963 37.4437179,20.2900458 37.419273,20.2669371 L34.0268385,17.0599455 L34.0268385,17.0599455 C33.9867045,17.0220055 33.984926,16.9587139 34.0228661,16.91858 C34.0384357,16.9021101 34.0591382,16.8914177 34.0815807,16.888255 L38.7752895,16.2268062 L38.7752895,16.2268062 C38.8076013,16.2222528 38.8356591,16.2022207 38.8504587,16.1731387 L40.9518588,12.0437603 L40.9518588,12.0437603 C40.9769072,11.9945387 41.0371149,11.9749424 41.0863365,11.9999908 C41.1051882,12.0095843 41.1205124,12.0249085 41.1301059,12.0437603 L43.2315061,16.1731387 L43.2315061,16.1731387 C43.2463056,16.2022207 43.2743635,16.2222528 43.3066753,16.2268062 L48.0003841,16.888255 L48.0003841,16.888255 C48.0550722,16.8959618 48.0931581,16.9465428 48.0854513,17.001231 C48.0822887,17.0236735 48.0715962,17.044376 48.0551263,17.0599455 L44.6626917,20.2669371 L44.6626917,20.2669371 C44.6382468,20.2900458 44.6270582,20.3238963 44.6329164,20.357021 L45.4342941,24.8883772 L45.4342941,24.8883772 C45.4439121,24.9427617 45.4076217,24.9946461 45.3532371,25.0042641 C45.3318281,25.0080503 45.3097683,25.0047561 45.2903993,24.9948806 L41.0864052,22.8514234 L41.0864052,22.8514234 C41.0578708,22.8368748 41.024094,22.8368748 40.9955595,22.8514234 Z"></path></g></svg></i>
                <i class="star js-analytics-event js-rating" title="Unusable Documentation" data-action="rating" data-label="1"><svg width="16px" height="15px" viewBox="0 0 16 15" version="1.1" xmlns="http://www.w3.org/2000/svg"><g stroke="#999999" transform="translate(-33.000000, -11.000000)" stroke-width="1" fill="none" fill-rule="evenodd"><path d="M40.9955595,22.8514234 L36.7915654,24.9948806 L36.7915654,24.9948806 C36.7423632,25.019967 36.6821404,25.0004172 36.657054,24.951215 C36.6471785,24.931846 36.6438844,24.9097862 36.6476706,24.8883772 L37.4490484,20.357021 L37.4490484,20.357021 C37.4549065,20.3238963 37.4437179,20.2900458 37.419273,20.2669371 L34.0268385,17.0599455 L34.0268385,17.0599455 C33.9867045,17.0220055 33.984926,16.9587139 34.0228661,16.91858 C34.0384357,16.9021101 34.0591382,16.8914177 34.0815807,16.888255 L38.7752895,16.2268062 L38.7752895,16.2268062 C38.8076013,16.2222528 38.8356591,16.2022207 38.8504587,16.1731387 L40.9518588,12.0437603 L40.9518588,12.0437603 C40.9769072,11.9945387 41.0371149,11.9749424 41.0863365,11.9999908 C41.1051882,12.0095843 41.1205124,12.0249085 41.1301059,12.0437603 L43.2315061,16.1731387 L43.2315061,16.1731387 C43.2463056,16.2022207 43.2743635,16.2222528 43.3066753,16.2268062 L48.0003841,16.888255 L48.0003841,16.888255 C48.0550722,16.8959618 48.0931581,16.9465428 48.0854513,17.001231 C48.0822887,17.0236735 48.0715962,17.044376 48.0551263,17.0599455 L44.6626917,20.2669371 L44.6626917,20.2669371 C44.6382468,20.2900458 44.6270582,20.3238963 44.6329164,20.357021 L45.4342941,24.8883772 L45.4342941,24.8883772 C45.4439121,24.9427617 45.4076217,24.9946461 45.3532371,25.0042641 C45.3318281,25.0080503 45.3097683,25.0047561 45.2903993,24.9948806 L41.0864052,22.8514234 L41.0864052,22.8514234 C41.0578708,22.8368748 41.024094,22.8368748 40.9955595,22.8514234 Z"></path></g></svg></i>
            </div>

            <div class="quick-edit">
                <a class="edit-link js-edit-link" href="https://github.com/gradle/gradle/edit/master/subprojects/docs/src/docs/userguide/">
                    <svg width="11px" height="12px" viewBox="0 0 11 12" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
                        <g stroke="#999999" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
                            <polyline points="9 5.11724219 9 11.5 0.5 11.5 0.5 2.5 5 2.5"></polyline>
                            <polygon fill="#999999" points="9.59427002 0.565307617 4.31427002 5.84530762 4.31427002 6.56530762 5.03427002 6.56530762 10.31427 1.28530762"></polygon>
                        </g>
                    </svg>
                    Edit this page
                </a>
            </div>
        </aside>
